/**
 * 解析范围数据，目前只支持数字
 * @param {String} range [-]、[-1]、[2-3]、[4-]
 */
export const formatRange = range => {
    const regex = /^\[([0-9]{0,})-([0-9]{0,})\]$/;
    if (regex.test(range)) {
        const result = range.match(regex);
        return Promise.resolve([result[1], result[2]]);
    }
    return Promise.reject(new Error('解析失败'));
};

/**
 * 判断是否为数字类型
 * @param {*} value
 */
const isNumber = value => {
    const regex = /^\d+$/;
    return regex.test(value);
};

/**
 * 生成范围数据 [-]、[-1]、[2-3]、[4-]
 * @param {Number} start 范围开始
 * @param {Number} end 范围结束
 */
export const generationRange = (start, end) => {
    if ((start === '' || isNumber(start)) && (end === '' || isNumber(end))) {
        return Promise.resolve(`[${start}-${end}]`);
    }
    return Promise.reject(new Error('数据格式错误'));
};
